1. Field of Invention
The invention relates to a method and apparatus for improved rendering of PostScript® or other Page Description Language (PDL) documents. More particularly, the invention relates to high addressable multibit screening of partial tone objects in a PDL interpreter environment to achieve better printing resolution and quality.
2. Description of Related Art
Image information, either color or black and white, is commonly derived by scanning in a gray level format containing a large number of levels, e.g., 256 levels for black and white and more than 16 million (2563) levels for color. This multi-level format is usually unprintable by standard printers.
Standard printers print in a limited number of levels, either a spot or no spot in the binary case, or a limited number of levels associated with the spot, for example, four in the quaternary case. Since gray level image data can be represented by very large values, it is necessary to reduce gray level data to a limited number of levels so that it is printable. Besides scanning, processing techniques such as computer generation produce gray level pixel values that require such a conversion.
A common method of converting gray level pixel image data to binary level pixel image data is through the use of screening, dithering or halftoning. In such arrangements, over a given area, each gray level pixel within the area is compared to one of a set of predetermined thresholds. The set of thresholds comprises a matrix of threshold values forming one or more halftone cells.
Graphical objects to be screened have a color attribute typically expressed as a set of integers, one integer for each device colorant. For example, in a one color black and white printer, the color specification uses a single integer. However, in a four color device (typically using the colors cyan, magenta, yellow and black), the device color specification for a graphical object consists of four integers. Screening is performed independently for each device color, possibly in parallel. Each integer represents an encoded value for the fractional tint coverage of ink in the area represented by the graphical object. For example, if the color is represented as an unsigned 8 bit integer, the minimum value may represent no ink coverage and the maximum value 255 may represent 100% ink coverage.
Halftone patterns are typically represented by an array of threshold values, one value for each colorant for each pixel for a normal printer that can print only one bit deep images directly. A PDL document may define the halftone pattern to be used for a given image or line-art object. If it does not, the printing system will use a predefined default pattern.
FIG. 1 illustrates a block diagram of a typical screening circuit. In this screening circuit, an unmodified image or video signal is fed into a modulation circuit 1 with a screen value from a halftone screen matrix to produce a modified signal. The modified signal is then thresholded by a binarization circuit 3 to produce a binary output. The binary output represents either the ON or the OFF characteristic of the processed pixel.
In this process, the sampled image picture elements are compared with a single threshold, and a black/white decision is made. The effect of such an arrangement is that, for a given area where the image is gray, some of the thresholds within the matrix will be exceeded, while others are not. In the binary case, the portions of the matrix, or cell elements, in which the thresholds are exceeded are printed in black, while the remaining elements are allowed to remain white or vise-versa. The effect of the distribution of black and white pixels over the small area is integrated by the human eye as gray.
In a network or single personal computer environment, a user may create a job to be printed comprising one or more pages, each consisting of one or more sections of text, graphics and photos. Alternatively, a job may be scanned in or copied from an existing file. This job is sent to a printer driver for printing and converted into a page description language, such as PostScript®. Typical PDL interpreters, such as the Adobe PostScript Interpreter, process objects defined in the PDL data stream for subsequent printing by the printer. PDL interpreters can exist within the printer, such as a laser printer, or can reside elsewhere in the printing system, such as at an image data source, such as a personal computer or server.
A PDL interpreter receives a PDL document from a host source, such as a personal computer (PC). The interpreter identifies various objects. This includes, but is not limited to, fully toned objects such as black text or lineart, and partially toned objects, such as lineart or images having less than 100% coverage. Such partially toned objects can be grayscale or colored (in a color other than black). The document may also contain halftone pattern definition objects. Each of these objects can be processed differently. Fully toned objects are processed within the interpreter and directly output in a predetermined output format. Partially toned objects are sent to a screening module within the interpreter for processing prior to outputting in a desired output format. The screening module screens the partially toned objects to obtain screened data for output. The halftoned data is output with the fully toned objects for subsequent printing. Halftone pattern objects are used to determine the required halftoning threshold array.
Most PDL interpreters are designed to obtain and render single bit output (ON/OFF states) images for printers with typically several hundred bits per inch in each orthogonal direction. These PDL interpreters are not readily adapted to properly process and obtain multibit deep pixel image data, which is necessary to achieve optimum quality reproduction using a high addressable printer. The standard PostScript® algorithm for 2-bit deep rendered images works well for video monitors or other true continuous tone devices, such as dye sublimation printers. This technique is described in the PostScript Language Reference Manual Second Edition, Addison-Wesley Publishing Co., 1990, the subject matter of which is incorporated herein by reference in its entirety. However, the results for an electrophotographic or lithographic printer, or any other non-continuous printing device, are horrid. These devices cannot reliably reproduce the large areas of partial pixels that the standard screening algorithms produce.
Printing systems have two primary characteristics, optical resolution and addressability. Resolution of a printing system is based on the inking or toning material's resolving power, or ability to maintain separate marks close together. Addressability is the precision of the printing systems ability to assign a digital address to a mark's location on a page. Addressability is a digital design function, while resolution is an analog system characteristic, which is a function of inking and toning materials used, optics, electro-mechanics and system addressability.
In casual conversation, these two characteristics are often confused, and the term “resolution” is often used to mean “addressability.” It is not uncommon for systems to have addressability that is significantly higher than actual resolution.
There are many printers capable of 600 dots per inch (dpi) or better resolution. However, so-called high addressable printers (with multibit addressing capabilities) are beginning to emerge. In such high addressable printers, each addressable pixel is capable of representation by more than merely an ON/OFF state. As exemplary high addressable printer is capable of 4 states: ON, OFF, ⅓ ON and ⅔ ON. This exemplary printer has an output pulse width limited to about {fraction (1/600)}th of an inch, but positional accuracy can be up to {fraction (1/800)}th of an inch. Such a system has addressability that is several times higher than the system's resolution.
High addressable screening has been achieved in a reprographic environment. For example, see U.S. Pat. No. 5,659,634 to Yeh et al., assigned to the same assignee as this invention and incorporated herein by reference in its entirety. However, in Yeh's system, a scanner renders complete scanned-in images using fixed screening patterns. Such systems cannot obtain and process 2-bit deep composite image data in a PDL interpreter environment.